package betandregret.exceptions;

import betandregret.interfaces.IBetAndRegret.Systemereignis;

/**
 * Eine Exception fuer den Transport eines Systemereignisses im Fehlerfall. Sie
 * werfen an geeigneter Stelle Ihrer Implementierung mit
 * "throw new RegretException(Systemereignis.<BEZEICHNUNG>)" ein entsprechendes
 * Systemereignis.
 * 
 * Diese Klasse darf nicht veraendert werden.
 * 
 * @author daniel
 * 
 */
@SuppressWarnings("serial")
public class RegretException extends RuntimeException {

	private Systemereignis systemereignis;

	public RegretException(Systemereignis systemereignis) {
		this.systemereignis = systemereignis;
	}

	@Override
	public String toString() {
		return systemereignis.name();
	}

	@Override
	public String getMessage() {
		return systemereignis.name();
	}

	public Systemereignis getSystemereignis() {
		return systemereignis;
	}

}
